home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1985 February / 64er_Magazin_85-02_1985_Markt__Technik_de.d64 / super memory (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  7KB  |  184 lines

  1. 0 goto 9
  2. 1 ***********************
  3. 2 *  super memory       *
  4. 3 *  von bernd arnold   *
  5. 4 *  schulenburg str.6  *
  6. 5 *  8500 nuernberg 50  *
  7. 6 *  tel 804567         *
  8. 7 ***********************
  9. 9 clr:rem alle variablen loeschen
  10. 10 poke53281,8:poke53280,7
  11. 11 print"[147][149]"
  12. 12 gosub 4500:rem springt zur einleitung
  13. 13 print"[147][149]":clr
  14. 14 input"bitte die endzahl eingeben ";a:aa=a:a=a+48
  15. 15 if a<58 then goto 17:rem zahl auf korrektheit ueberpruefen
  16. 16 print"die zahl darf nicht groesser als 9 sein":goto 10
  17. 17 print"bitte die anzahl der schritte eingeben ":inputb
  18. 20 a(1)=a:a(2)=a:a(3)=a:a(4)=a:a(5)=a:a(6)=a:a(7)=a:a(8)=a:a(9)=a:s=-1:b=b+1
  19. 40 goto 2000:rem zufallszahlen erzeugen
  20. 90 rem bildschirmgrafik aufbauen
  21. 100 print"[147]";
  22. 110 printchr$(176)+chr$(99)+chr$(178)+chr$(99)+chr$(178)+chr$(99)+chr$(174);
  23. 120 print"[157][157][157][157][157][157][157]";:printchr$(98)+chr$(a(1))+chr$(98)+chr$(a(2))+chr$(98);
  24. 130 printchr$(a(3))+chr$(125);:print"[157][157][157][157][157][157][157]";:printchr$(171)+chr$(99);
  25. 140 printchr$(123)+chr$(99)+chr$(123)+chr$(99)+chr$(179);:print"[157][157][157][157][157][157][157]";
  26. 150 printchr$(98)+chr$(a(4))+chr$(98)+chr$(a(5))+chr$(98)+chr$(a(6))+chr$(98);
  27. 160 print"[157][157][157][157][157][157][157]";:printchr$(171)+chr$(99)+chr$(123)+chr$(99)+chr$(123);
  28. 170 printchr$(99)+chr$(179);:print"[157][157][157][157][157][157][157]";:printchr$(98)+chr$(a(7));
  29. 180 printchr$(98)+chr$(a(8))+chr$(98)+chr$(a(9))+chr$(98);:print"[157][157][157][157][157][157][157]";
  30. 190 printchr$(173)+chr$(99)+chr$(177)+chr$(99)+chr$(177)+chr$(99)+chr$(189)
  31. 200 print"f=[145] [157] [157] [145]  [146]h=  [145] [157] [157] [146][145]g=   [145][157][157] [157] [146][145]";
  32. 205 print"t=[145]   [157][157] [157] [146][145]";
  33. 210 print"v=   [145][157][157] [145][157] ":print"[145][145][145][145][145][145][145][145][145][145]r=[145]   [157][157][157] [157] [146]"
  34. 220 print"c=   [157][157][157][145] [145][157] [146][145][145][145]y=[145]   [157] [157] [146][157][157]";
  35. 230 print"[157][157][157]b=[145] [157] [157][157][157]   "
  36. 240 return
  37. 250 rem *******************************
  38. 1000 print"":s=s+1:rem s=schritte
  39. 1010 print"[149] bitte das feld eingeben, das sie ver-   aendern wollen"
  40. 1015 print"schritte:"s
  41. 1016 printtab(18)"[145]endzahl lautet "aa
  42. 1017 print"f1=neues spiel":print" f7=alle schritte zurueck"
  43. 1020 geta$:rem tastaturabfrage
  44. 1025 ifa$="[136]"then4100:rem "[136]" = f7
  45. 1030 ifa$="r"then1140
  46. 1050 ifa$="t"then1150
  47. 1060 ifa$="y"then1160
  48. 1070 ifa$="f"then1170
  49. 1080 ifa$="g"then1180
  50. 1090 ifa$="h"then1190
  51. 1100 ifa$="c"then1200
  52. 1110 ifa$="v"then1210
  53. 1120 ifa$="b"then1220
  54. 1121 ifa$="[133]"then13:rem "[133]" = f1
  55. 1122 fort=1to9:ifa(t)=a then x=x+1:rem  ueberpruefen ob alle zahlen gleich sind
  56. 1123 nextt
  57. 1124 if x=9 then 3000:rem wenn ja dann  gradulation
  58. 1125 x=0
  59. 1130 goto 1020
  60. 1135 rem  r-zahlen um 1 erhoehen
  61. 1140 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(4)=a(4)+1:a(7)=a(7)+1
  62. 1141 fort=1to9:ifa(t)=58thena(t)=48:rem wenn zahl groesser als 9 dann auf 0
  63. 1142 nextt:gosub 100:goto 1000
  64. 1143 rem  t-zahlen um 1 erhoehen
  65. 1150 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(5)=a(5)+1:a(8)=a(8)+1
  66. 1151 fort=1to9:ifa(t)=58thena(t)=48
  67. 1152 nextt:gosub 100:goto 1000
  68. 1153 rem  y-zahlen um 1 erhoehen
  69. 1160 a(1)=a(1)+1:a(2)=a(2)+1:a(3)=a(3)+1:a(6)=a(6)+1:a(9)=a(9)+1
  70. 1161 fort=1to9:ifa(t)=58thena(t)=48
  71. 1162 nextt:gosub 100:goto 1000
  72. 1163 rem  f-zahlen um 1 erhoehen
  73. 1170 a(1)=a(1)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(7)=a(7)+1
  74. 1171 fort=1to9:ifa(t)=58thena(t)=48
  75. 1172 nextt:gosub 100:goto 1000
  76. 1173 rem  g-zahlen um 1 erhoehen
  77. 1180 a(2)=a(2)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(8)=a(8)+1
  78. 1181 fort=1to9:ifa(t)=58thena(t)=48
  79. 1182 nextt:gosub 100:goto 1000
  80. 1183 rem  h-zahlen um 1 erhoehen
  81. 1190 a(3)=a(3)+1:a(4)=a(4)+1:a(5)=a(5)+1:a(6)=a(6)+1:a(9)=a(9)+1
  82. 1191 fort=1to9:ifa(t)=58thena(t)=48
  83. 1192 nextt:gosub 100:goto 1000
  84. 1193 rem  c-zahlen um 1 erhoehen
  85. 1200 a(1)=a(1)+1:a(4)=a(4)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
  86. 1201 fort=1to9:ifa(t)=58thena(t)=48
  87. 1202 nextt:gosub 100:goto 1000
  88. 1203 rem  v-zahlen um 1 erhoehen
  89. 1210 a(2)=a(2)+1:a(5)=a(5)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
  90. 1211 fort=1to9:ifa(t)=58thena(t)=48
  91. 1212 nextt:gosub 100:goto 1000
  92. 1213 rem  b-zahlen um 1 erhoehen
  93. 1220 a(3)=a(3)+1:a(6)=a(6)+1:a(7)=a(7)+1:a(8)=a(8)+1:a(9)=a(9)+1
  94. 1221 fort=1to9:ifa(t)=58thena(t)=48
  95. 1222 nextt:gosub 100:goto 1000:rem           zahlen in grafik erneuern
  96. 1223 rem ******************************
  97. 1224 rem zufallszahlen erzeugen
  98. 2000 print"[147]einen moment bitte!"
  99. 2001 z=int(9*rnd(1))+1:bb=bb+1
  100. 2002 if bb=b then 4000:rem kontrolle ob genug zufallszahlen erzeugt sind
  101. 2003 goto 2010
  102. 2010 on z goto 2020,2030,2040,2050,2060,2070,2080,2090,2100
  103. 2020 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(4)=a(4)-1:a(7)=a(7)-1
  104. 2021 fort=1to9:ifa(t)=47thena(t)=57
  105. 2022 nextt:goto 2001
  106. 2023 rem ******************************
  107. 2030 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(5)=a(5)-1:a(8)=a(8)-1
  108. 2031 fort=1to9:ifa(t)=47thena(t)=57
  109. 2032 nextt:goto 2001
  110. 2033 rem ******************************
  111. 2040 a(1)=a(1)-1:a(2)=a(2)-1:a(3)=a(3)-1:a(6)=a(6)-1:a(9)=a(9)-1
  112. 2041 fort=1to9:ifa(t)=47thena(t)=57
  113. 2042 nextt:goto 2001
  114. 2043 rem ******************************
  115. 2050 a(1)=a(1)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(7)=a(7)-1
  116. 2051 fort=1to9:ifa(t)=47thena(t)=57
  117. 2052 nextt:goto 2001
  118. 2053 rem ******************************
  119. 2060 a(2)=a(2)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(8)=a(8)-1
  120. 2061 fort=1to9:ifa(t)=47thena(t)=57
  121. 2062 nextt:goto 2001
  122. 2063 rem ******************************
  123. 2070 a(3)=a(3)-1:a(4)=a(4)-1:a(5)=a(5)-1:a(6)=a(6)-1:a(9)=a(9)-1
  124. 2071 fort=1to9:ifa(t)=47thena(t)=57
  125. 2072 nextt:goto 2001
  126. 2073 rem ******************************
  127. 2080 a(1)=a(1)-1:a(4)=a(4)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
  128. 2081 fort=1to9:ifa(t)=47thena(t)=57
  129. 2082 nextt:goto 2001
  130. 2083 rem ******************************
  131. 2090 a(2)=a(2)-1:a(5)=a(5)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
  132. 2091 fort=1to9:ifa(t)=47thena(t)=57
  133. 2092 nextt:goto 2001
  134. 2093 rem ******************************
  135. 2100 a(3)=a(3)-1:a(6)=a(6)-1:a(7)=a(7)-1:a(8)=a(8)-1:a(9)=a(9)-1
  136. 2101 fort=1to9:ifa(t)=47thena(t)=57
  137. 2102 nextt:goto 2001
  138. 2103 rem  spiel gewonnen : schlussgrafik
  139. 3000 print"[147]"
  140. 3010 print" graduliere sie haben das problem in"s:print" schritten geloest"
  141. 3020 if s<=bb-1 then 3040
  142. 3030 goto 3060
  143. 3040 print" das ist die geringste anzahl von"
  144. 3050 print" schritten die moeglich war!"
  145. 3060 print" wollen sie noch ein spiel";
  146. 3070 inputa$:ifa$="j"then goto13
  147. 3080 print"[147]schade":end
  148. 4000 fort=1to9:b(t)=a(t):nextt
  149. 4010 gosub 100:goto 1000
  150. 4100 fort=1to9:a(t)=b(t):nextt
  151. 4110 s=-1:gosub 100:goto 1000
  152. 4500 rem titelbild erzeugen
  153. 4510 print"[147]";
  154. 4520 print"bernd  arnold[157][157][157][157][157][157][157][157][157][157][157][157]presentiert"
  155. 4530 fort=0to2400:nextt
  156. 4540 print"[147]";
  157. 4550 print"super memory"
  158. 4560 fort=0to2400:nextt
  159. 4570 print"[147]64'er                            64'er"
  160. 4580 print"";
  161. 4590 print"produziert[157][157][157][157][157][157][157][157][157][157]20.10.1984"
  162. 4600 print"64'er                            64'er"
  163. 4610 fort=0to2400:nextt
  164. 4620 print"[147]"
  165. 4630 print"dies ist ein denkspiel fuer jedes alter."
  166. 4640 print" sinn des spieles ist es, zahlen in      einem 3*3 kaestchen ";
  167. 4650 print"grossen feld so zu  manipulieren dass zum schluss alle";
  168. 4660 print" den  gleichen wert haben."
  169. 4670 print" durch druecken spezieller tasten die    spaeter angezeigt werden,";
  170. 4680 print" koennen be-   stimmte zahlen um eins erhoeht werden."
  171. 4690 print" welche zahlen das sind koennen sie an   den mustern erkennen."
  172. 4700 print"weiter mit return"
  173. 4710 geta$:ifa$<>chr$(13)then4710
  174. 4720 print"[147]"
  175. 4730 print" sie koennen waehlen welche zahl zum     schluss einmal im ";
  176. 4740 print"kaestchen stehen      soll."
  177. 4750 print" auserdem koennen sie waehlen wieviele   schritte sie mindestens ";
  178. 4760 print"dazu benoeti-   gen."
  179. 4770 print" ps: wenn ihnen das spiel schwer er-     scheinen sollte, ";
  180. 4780 print"macht nichts es ist    noch kein meister vom himmel gefallen!"
  181. 4790 print" zum spielen bitte taste druecken"
  182. 4800 geta$:ifa$=""then4800
  183. 4810 return
  184.